package com.ruiben.mall.pojo;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Table(name = "user_order")
public class UserOrder {
    /**
     * id
     */
    @Id
    private String id;

    /**
     * 用户id
     */
    @Column(name = "userId")
    private String userid;

    /**
     * 商品订单号
     */
    @Column(name = "orderNo")
    private String orderno;

    /**
     * 下单时间
     */
    @Column(name = "orderTime")
    private Date ordertime;

    /**
     * 买家留言
     */
    @Column(name = "orderContent")
    private String ordercontent;

    /**
     * 合计金额，含运费
     */
    @Column(name = "sumPrice")
    private BigDecimal sumprice;

    /**
     * 订单状态（1未付款2已付款3已发货4待评价5已评价6退换货7取消订单）
     */
    @Column(name = "orderStatus")
    private Short orderstatus;

    /**
     * 快递费
     */
    @Column(name = "deliveryPrice")
    private BigDecimal deliveryprice;

    /**
     * 发货时间
     */
    @Column(name = "deliveryTime")
    private Date deliverytime;

    /**
     * 配送方式（1自主配送，2快递，3上面自取）
     */
    @Column(name = "deliveryType")
    private Short deliverytype;

    /**
     * 运单号(当deliveryType为1的时候）
     */
    @Column(name = "deliveryNo")
    private String deliveryno;

    /**
     * 快递名称
     */
    @Column(name = "deliveryName")
    private String deliveryname;

    /**
     * 付款时间
     */
    @Column(name = "payTime")
    private Date paytime;

    /**
     * 支付方式（1，支付宝，2微信,3余额）
     */
    @Column(name = "payType")
    private Short paytype;

    /**
     * 支付单号
     */
    @Column(name = "payNo")
    private String payno;

    /**
     * 用户收件地址
     */
    @Column(name = "userAddressId")
    private String useraddressid;

    /**
     * 去快递人
     */
    @Column(name = "consigneeUserName")
    private String consigneeusername;

    /**
     * 联系人电话
     */
    @Column(name = "consigneePhone")
    private String consigneephone;

    /**
     * 省
     */
    @Column(name = "consigneeProvince")
    private String consigneeprovince;

    /**
     * 区
     */
    @Column(name = "consigneeArea")
    private String consigneearea;

    /**
     * 市
     */
    @Column(name = "consigneeCity")
    private String consigneecity;

    /**
     * 地址
     */
    @Column(name = "consigneeAddress")
    private String consigneeaddress;

    /**
     * 收货时间
     */
    @Column(name = "getTime")
    private Date gettime;


    private List<UserOrderProduct> orderProduct;

    public List<UserOrderProduct> getOrderProduct() {
        return orderProduct;
    }

    public void setOrderProduct(List<UserOrderProduct> orderProduct) {
        this.orderProduct = orderProduct;
    }

    /**
     * 获取id
     *
     * @return id - id
     */
    public String getId() {
        return id;
    }

    /**
     * 设置id
     *
     * @param id id
     */
    public void setId(String id) {
        this.id = id;
    }

    /**
     * 获取用户id
     *
     * @return userId - 用户id
     */
    public String getUserid() {
        return userid;
    }

    /**
     * 设置用户id
     *
     * @param userid 用户id
     */
    public void setUserid(String userid) {
        this.userid = userid;
    }

    /**
     * 获取商品订单号
     *
     * @return orderNo - 商品订单号
     */
    public String getOrderno() {
        return orderno;
    }

    /**
     * 设置商品订单号
     *
     * @param orderno 商品订单号
     */
    public void setOrderno(String orderno) {
        this.orderno = orderno;
    }

    /**
     * 获取下单时间
     *
     * @return orderTime - 下单时间
     */
    public Date getOrdertime() {
        return ordertime;
    }

    /**
     * 设置下单时间
     *
     * @param ordertime 下单时间
     */
    public void setOrdertime(Date ordertime) {
        this.ordertime = ordertime;
    }

    /**
     * 获取买家留言
     *
     * @return orderContent - 买家留言
     */
    public String getOrdercontent() {
        return ordercontent;
    }

    /**
     * 设置买家留言
     *
     * @param ordercontent 买家留言
     */
    public void setOrdercontent(String ordercontent) {
        this.ordercontent = ordercontent;
    }

    /**
     * 获取合计金额，含运费
     *
     * @return sumPrice - 合计金额，含运费
     */
    public BigDecimal getSumprice() {
        return sumprice;
    }

    /**
     * 设置合计金额，含运费
     *
     * @param sumprice 合计金额，含运费
     */
    public void setSumprice(BigDecimal sumprice) {
        this.sumprice = sumprice;
    }

    /**
     * 获取订单状态（1未付款2已付款3已发货4待评价5已评价6退换货7取消订单）
     *
     * @return orderStatus - 订单状态（1未付款2已付款3已发货4待评价5已评价6退换货7取消订单）
     */
    public Short getOrderstatus() {
        return orderstatus;
    }

    /**
     * 设置订单状态（1未付款2已付款3已发货4待评价5已评价6退换货7取消订单）
     *
     * @param orderstatus 订单状态（1未付款2已付款3已发货4待评价5已评价6退换货7取消订单）
     */
    public void setOrderstatus(Short orderstatus) {
        this.orderstatus = orderstatus;
    }

    /**
     * 获取快递费
     *
     * @return deliveryPrice - 快递费
     */
    public BigDecimal getDeliveryprice() {
        return deliveryprice;
    }

    /**
     * 设置快递费
     *
     * @param deliveryprice 快递费
     */
    public void setDeliveryprice(BigDecimal deliveryprice) {
        this.deliveryprice = deliveryprice;
    }

    /**
     * 获取发货时间
     *
     * @return deliveryTime - 发货时间
     */
    public Date getDeliverytime() {
        return deliverytime;
    }

    /**
     * 设置发货时间
     *
     * @param deliverytime 发货时间
     */
    public void setDeliverytime(Date deliverytime) {
        this.deliverytime = deliverytime;
    }

    /**
     * 获取配送方式（1自主配送，2快递，3上面自取）
     *
     * @return deliveryType - 配送方式（1自主配送，2快递，3上面自取）
     */
    public Short getDeliverytype() {
        return deliverytype;
    }

    /**
     * 设置配送方式（1自主配送，2快递，3上面自取）
     *
     * @param deliverytype 配送方式（1自主配送，2快递，3上面自取）
     */
    public void setDeliverytype(Short deliverytype) {
        this.deliverytype = deliverytype;
    }

    /**
     * 获取运单号(当deliveryType为1的时候）
     *
     * @return deliveryNo - 运单号(当deliveryType为1的时候）
     */
    public String getDeliveryno() {
        return deliveryno;
    }

    /**
     * 设置运单号(当deliveryType为1的时候）
     *
     * @param deliveryno 运单号(当deliveryType为1的时候）
     */
    public void setDeliveryno(String deliveryno) {
        this.deliveryno = deliveryno;
    }

    /**
     * 获取快递名称
     *
     * @return deliveryName - 快递名称
     */
    public String getDeliveryname() {
        return deliveryname;
    }

    /**
     * 设置快递名称
     *
     * @param deliveryname 快递名称
     */
    public void setDeliveryname(String deliveryname) {
        this.deliveryname = deliveryname;
    }

    /**
     * 获取付款时间
     *
     * @return payTime - 付款时间
     */
    public Date getPaytime() {
        return paytime;
    }

    /**
     * 设置付款时间
     *
     * @param paytime 付款时间
     */
    public void setPaytime(Date paytime) {
        this.paytime = paytime;
    }

    /**
     * 获取支付方式（1，支付宝，2微信,3余额）
     *
     * @return payType - 支付方式（1，支付宝，2微信,3余额）
     */
    public Short getPaytype() {
        return paytype;
    }

    /**
     * 设置支付方式（1，支付宝，2微信,3余额）
     *
     * @param paytype 支付方式（1，支付宝，2微信,3余额）
     */
    public void setPaytype(Short paytype) {
        this.paytype = paytype;
    }

    /**
     * 获取支付单号
     *
     * @return payNo - 支付单号
     */
    public String getPayno() {
        return payno;
    }

    /**
     * 设置支付单号
     *
     * @param payno 支付单号
     */
    public void setPayno(String payno) {
        this.payno = payno;
    }

    /**
     * 获取用户收件地址
     *
     * @return userAddressId - 用户收件地址
     */
    public String getUseraddressid() {
        return useraddressid;
    }

    /**
     * 设置用户收件地址
     *
     * @param useraddressid 用户收件地址
     */
    public void setUseraddressid(String useraddressid) {
        this.useraddressid = useraddressid;
    }

    /**
     * 获取去快递人
     *
     * @return consigneeUserName - 去快递人
     */
    public String getConsigneeusername() {
        return consigneeusername;
    }

    /**
     * 设置去快递人
     *
     * @param consigneeusername 去快递人
     */
    public void setConsigneeusername(String consigneeusername) {
        this.consigneeusername = consigneeusername;
    }

    /**
     * 获取联系人电话
     *
     * @return consigneePhone - 联系人电话
     */
    public String getConsigneephone() {
        return consigneephone;
    }

    /**
     * 设置联系人电话
     *
     * @param consigneephone 联系人电话
     */
    public void setConsigneephone(String consigneephone) {
        this.consigneephone = consigneephone;
    }

    /**
     * 获取省
     *
     * @return consigneeProvince - 省
     */
    public String getConsigneeprovince() {
        return consigneeprovince;
    }

    /**
     * 设置省
     *
     * @param consigneeprovince 省
     */
    public void setConsigneeprovince(String consigneeprovince) {
        this.consigneeprovince = consigneeprovince;
    }

    /**
     * 获取区
     *
     * @return consigneeArea - 区
     */
    public String getConsigneearea() {
        return consigneearea;
    }

    /**
     * 设置区
     *
     * @param consigneearea 区
     */
    public void setConsigneearea(String consigneearea) {
        this.consigneearea = consigneearea;
    }

    /**
     * 获取市
     *
     * @return consigneeCity - 市
     */
    public String getConsigneecity() {
        return consigneecity;
    }

    /**
     * 设置市
     *
     * @param consigneecity 市
     */
    public void setConsigneecity(String consigneecity) {
        this.consigneecity = consigneecity;
    }

    /**
     * 获取地址
     *
     * @return consigneeAddress - 地址
     */
    public String getConsigneeaddress() {
        return consigneeaddress;
    }

    /**
     * 设置地址
     *
     * @param consigneeaddress 地址
     */
    public void setConsigneeaddress(String consigneeaddress) {
        this.consigneeaddress = consigneeaddress;
    }

    /**
     * 获取收货时间
     *
     * @return getTime - 收货时间
     */
    public Date getGettime() {
        return gettime;
    }

    /**
     * 设置收货时间
     *
     * @param gettime 收货时间
     */
    public void setGettime(Date gettime) {
        this.gettime = gettime;
    }
}